今天介紹 Vue 3 的一項優化:Global API Treeshaking
Vue 2 有些全域 API 例如 Vue.nextTick、Vue.set
這些 API 由於是全域性註冊在 Vue class 上面,因此在建構的過程中無法移除,即便你完全沒用到它!
為了解決這個問題,Vue 3 將這類 API 從 Vue class 中移了出來,舉例來說:
// before vue 3
import Vue from 'vue'
Vue.nextTick(() => {
// something something DOM-related
})
// after vue 3
import { nextTick } from 'vue'
nextTick(() => {
// something something DOM-related
})
相同原因影響的 API 還有: